Autogenerated HTML docs for v1.7.0.3-291-g5e4f 
diff --git a/config.txt b/config.txt index 1dbded0..06b2f82 100644 --- a/config.txt +++ b/config.txt 
@@ -519,10 +519,12 @@  core.notesRef:: 	When showing commit messages, also show notes which are stored in 	the given ref. This ref is expected to contain files named -	after the full SHA-1 of the commit they annotate. +	after the full SHA-1 of the commit they annotate. The ref +	must be fully qualified.  +  If such a file exists in the given ref, the referenced blob is read, and -appended to the commit message, separated by a "Notes:" line. If the +appended to the commit message, separated by a "Notes (<refname>):" +line (shortened to "Notes:" in the case of "refs/notes/commits"). If the  given ref itself does not exist, it is not an error, but means that no  notes should be printed.  + @@ -1334,6 +1336,53 @@  mergetool.prompt:: 	Prompt before each invocation of the merge resolution program.   +notes.displayRef:: +	The (fully qualified) refname from which to show notes when +	showing commit messages. The value of this variable can be set +	to a glob, in which case notes from all matching refs will be +	shown. You may also specify this configuration variable +	several times. A warning will be issued for refs that do not +	exist, but a glob that does not match any refs is silently +	ignored. ++ +This setting can be overridden with the `GIT_NOTES_DISPLAY_REF` +environment variable, which must be a colon separated list of refs or +globs. ++ +The effective value of "core.notesRef" (possibly overridden by +GIT_NOTES_REF) is also implicitly added to the list of refs to be +displayed. + +notes.rewrite.<command>:: +	When rewriting commits with <command> (currently `amend` or +	`rebase`) and this variable is set to `true`, git +	automatically copies your notes from the original to the +	rewritten commit. Defaults to `true`, but see +	"notes.rewriteRef" below. ++ +This setting can be overridden with the `GIT_NOTES_REWRITE_REF` +environment variable, which must be a colon separated list of refs or +globs. + +notes.rewriteMode:: +	When copying notes during a rewrite (see the +	"notes.rewrite.<command>" option), determines what to do if +	the target commit already has a note. Must be one of +	`overwrite`, `concatenate`, or `ignore`. Defaults to +	`concatenate`. ++ +This setting can be overridden with the `GIT_NOTES_REWRITE_MODE` +environment variable. + +notes.rewriteRef:: +	When copying notes during a rewrite, specifies the (fully +	qualified) ref whose notes should be copied. The ref may be a +	glob, in which case notes in all matching refs will be copied. +	You may also specify this configuration several times. ++ +Does not have a default value; you must configure this variable to +enable note rewriting. +  pack.window:: 	The size of the window used by linkgit:git-pack-objects[1] when no 	window size is given on the command line. Defaults to 10. 
diff --git a/diff-generate-patch.txt b/diff-generate-patch.txt index 0f25ba7..8f9a241 100644 --- a/diff-generate-patch.txt +++ b/diff-generate-patch.txt 
@@ -56,7 +56,8 @@    "git-diff-tree", "git-diff-files" and "git-diff" can take '-c' or  '--cc' option to produce 'combined diff'. For showing a merge commit -with "git log -p", this is the default format. +with "git log -p", this is the default format; you can force showing +full diff with the '-m' option.  A 'combined diff' format looks like this:    ------------ 
diff --git a/git-config.html b/git-config.html index a9a98a1..4df5ea8 100644 --- a/git-config.html +++ b/git-config.html 
@@ -1488,10 +1488,12 @@  <p>   When showing commit messages, also show notes which are stored in   the given ref. This ref is expected to contain files named  - after the full SHA-1 of the commit they annotate.  + after the full SHA-1 of the commit they annotate. The ref  + must be fully qualified.   </p>   <div class="para"><p>If such a file exists in the given ref, the referenced blob is read, and  -appended to the commit message, separated by a "Notes:" line. If the  +appended to the commit message, separated by a "Notes (&lt;refname&gt;):"  +line (shortened to "Notes:" in the case of "refs/notes/commits"). If the   given ref itself does not exist, it is not an error, but means that no   notes should be printed.</p></div>   <div class="para"><p>This setting defaults to "refs/notes/commits", and can be overridden by  @@ -3102,6 +3104,68 @@  </p>   </dd>   <dt>  +notes.displayRef  +</dt>  +<dd>  +<p>  + The (fully qualified) refname from which to show notes when  + showing commit messages. The value of this variable can be set  + to a glob, in which case notes from all matching refs will be  + shown. You may also specify this configuration variable  + several times. A warning will be issued for refs that do not  + exist, but a glob that does not match any refs is silently  + ignored.  +</p>  +<div class="para"><p>This setting can be overridden with the <tt>GIT_NOTES_DISPLAY_REF</tt>  +environment variable, which must be a colon separated list of refs or  +globs.</p></div>  +<div class="para"><p>The effective value of "core.notesRef" (possibly overridden by  +GIT_NOTES_REF) is also implicitly added to the list of refs to be  +displayed.</p></div>  +</dd>  +<dt>  +notes.rewrite.&lt;command&gt;  +</dt>  +<dd>  +<p>  + When rewriting commits with &lt;command&gt; (currently <tt>amend</tt> or  + <tt>rebase</tt>) and this variable is set to <tt>true</tt>, git  + automatically copies your notes from the original to the  + rewritten commit. Defaults to <tt>true</tt>, but see  + "notes.rewriteRef" below.  +</p>  +<div class="para"><p>This setting can be overridden with the <tt>GIT_NOTES_REWRITE_REF</tt>  +environment variable, which must be a colon separated list of refs or  +globs.</p></div>  +</dd>  +<dt>  +notes.rewriteMode  +</dt>  +<dd>  +<p>  + When copying notes during a rewrite (see the  + "notes.rewrite.&lt;command&gt;" option), determines what to do if  + the target commit already has a note. Must be one of  + <tt>overwrite</tt>, <tt>concatenate</tt>, or <tt>ignore</tt>. Defaults to  + <tt>concatenate</tt>.  +</p>  +<div class="para"><p>This setting can be overridden with the <tt>GIT_NOTES_REWRITE_MODE</tt>  +environment variable.</p></div>  +</dd>  +<dt>  +notes.rewriteRef  +</dt>  +<dd>  +<p>  + When copying notes during a rewrite, specifies the (fully  + qualified) ref whose notes should be copied. The ref may be a  + glob, in which case notes in all matching refs will be copied.  + You may also specify this configuration several times.  +</p>  +<div class="para"><p>Does not have a default value; you must configure this variable to  +enable note rewriting.</p></div>  +</dd>  +<dt>   pack.window   </dt>   <dd>  @@ -3807,7 +3871,7 @@  </div>   <div id="footer">   <div id="footer-text">  -Last updated 2010-03-20 20:59:12 UTC  +Last updated 2010-03-25 00:38:20 UTC   </div>   </div>   </body>  
diff --git a/git-describe.html b/git-describe.html index 74066be..b94326e 100644 --- a/git-describe.html +++ b/git-describe.html 
@@ -477,7 +477,10 @@  <div class="para"><p>The number of additional commits is the number   of commits which would be displayed by "git log v1.0.4..parent".   The hash suffix is "-g" + 7-char abbreviation for the tip commit  -of parent (which was <tt>2414721b194453f058079d897d13c4e377f92dc6</tt>).</p></div>  +of parent (which was <tt>2414721b194453f058079d897d13c4e377f92dc6</tt>).  +The "g" prefix stands for "git" and is used to allow describing the version of  +a software depending on the SCM the software is managed with. This is useful  +in an environment where people may use different SCMs.</p></div>   <div class="para"><p>Doing a <em>git describe</em> on a tag-name will just show the tag name:</p></div>   <div class="literalblock">   <div class="content">  @@ -542,7 +545,7 @@  </div>   <div id="footer">   <div id="footer-text">  -Last updated 2010-02-13 00:59:39 UTC  +Last updated 2010-03-25 00:38:20 UTC   </div>   </div>   </body>  
diff --git a/git-describe.txt b/git-describe.txt index 6fc5323..7ef9d51 100644 --- a/git-describe.txt +++ b/git-describe.txt 
@@ -105,6 +105,9 @@  of commits which would be displayed by "git log v1.0.4..parent".  The hash suffix is "-g" + 7-char abbreviation for the tip commit  of parent (which was `2414721b194453f058079d897d13c4e377f92dc6`). +The "g" prefix stands for "git" and is used to allow describing the version of +a software depending on the SCM the software is managed with. This is useful +in an environment where people may use different SCMs.    Doing a 'git describe' on a tag-name will just show the tag name:   
diff --git a/git-diff-files.html b/git-diff-files.html index 40b7e0e..61adf9a 100644 --- a/git-diff-files.html +++ b/git-diff-files.html 
@@ -1181,7 +1181,8 @@  <div class="sectionbody">   <div class="para"><p>"git-diff-tree", "git-diff-files" and "git-diff" can take <em>-c</em> or   <em>--cc</em> option to produce <em>combined diff</em>. For showing a merge commit  -with "git log -p", this is the default format.  +with "git log -p", this is the default format; you can force showing  +full diff with the <em>-m</em> option.   A <em>combined diff</em> format looks like this:</p></div>   <div class="listingblock">   <div class="content">  @@ -1430,7 +1431,7 @@  </div>   <div id="footer">   <div id="footer-text">  -Last updated 2010-03-03 05:12:39 UTC  +Last updated 2010-03-25 00:38:21 UTC   </div>   </div>   </body>  
diff --git a/git-diff-index.html b/git-diff-index.html index da5acec..883ed3a 100644 --- a/git-diff-index.html +++ b/git-diff-index.html 
@@ -1165,7 +1165,8 @@  <div class="sectionbody">   <div class="para"><p>"git-diff-tree", "git-diff-files" and "git-diff" can take <em>-c</em> or   <em>--cc</em> option to produce <em>combined diff</em>. For showing a merge commit  -with "git log -p", this is the default format.  +with "git log -p", this is the default format; you can force showing  +full diff with the <em>-m</em> option.   A <em>combined diff</em> format looks like this:</p></div>   <div class="listingblock">   <div class="content">  @@ -1508,7 +1509,7 @@  </div>   <div id="footer">   <div id="footer-text">  -Last updated 2010-03-03 05:12:39 UTC  +Last updated 2010-03-25 00:38:22 UTC   </div>   </div>   </body>  
diff --git a/git-diff-tree.html b/git-diff-tree.html index de6397f..e376000 100644 --- a/git-diff-tree.html +++ b/git-diff-tree.html 
@@ -994,7 +994,7 @@  --no-notes   </dt>   <dt>  ---show-notes  +--show-notes[=&lt;ref&gt;]   </dt>   <dd>   <p>  @@ -1004,6 +1004,19 @@  there is no <tt>--pretty</tt>, <tt>--format</tt> nor <tt>--oneline</tt> option is   given on the command line.   </p>  +<div class="para"><p>With an optional argument, add this ref to the list of notes. The ref  +is taken to be in <tt>refs/notes/</tt> if it is not qualified.</p></div>  +</dd>  +<dt>  +--[no-]standard-notes  +</dt>  +<dd>  +<p>  + Enable or disable populating the notes ref list from the  + <em>core.notesRef</em> and <em>notes.displayRef</em> variables (or  + corresponding environment overrides). Enabled by default.  + See <a href="git-config.html">git-config(1)</a>.  +</p>   </dd>   <dt>   --no-commit-id  @@ -1806,7 +1819,8 @@  <div class="sectionbody">   <div class="para"><p>"git-diff-tree", "git-diff-files" and "git-diff" can take <em>-c</em> or   <em>--cc</em> option to produce <em>combined diff</em>. For showing a merge commit  -with "git log -p", this is the default format.  +with "git log -p", this is the default format; you can force showing  +full diff with the <em>-m</em> option.   A <em>combined diff</em> format looks like this:</p></div>   <div class="listingblock">   <div class="content">  @@ -2055,7 +2069,7 @@  </div>   <div id="footer">   <div id="footer-text">  -Last updated 2010-03-03 05:12:40 UTC  +Last updated 2010-03-25 00:38:22 UTC   </div>   </div>   </body>  
diff --git a/git-diff.html b/git-diff.html index 1be6239..2c80b03 100644 --- a/git-diff.html +++ b/git-diff.html 
@@ -1227,7 +1227,8 @@  <div class="sectionbody">   <div class="para"><p>"git-diff-tree", "git-diff-files" and "git-diff" can take <em>-c</em> or   <em>--cc</em> option to produce <em>combined diff</em>. For showing a merge commit  -with "git log -p", this is the default format.  +with "git log -p", this is the default format; you can force showing  +full diff with the <em>-m</em> option.   A <em>combined diff</em> format looks like this:</p></div>   <div class="listingblock">   <div class="content">  @@ -1637,7 +1638,7 @@  </div>   <div id="footer">   <div id="footer-text">  -Last updated 2010-03-03 05:12:40 UTC  +Last updated 2010-03-25 00:38:22 UTC   </div>   </div>   </body>  
diff --git a/git-log.html b/git-log.html index 8ea5299..868cdcb 100644 --- a/git-log.html +++ b/git-log.html 
@@ -983,7 +983,7 @@  --no-notes   </dt>   <dt>  ---show-notes  +--show-notes[=&lt;ref&gt;]   </dt>   <dd>   <p>  @@ -993,6 +993,19 @@  there is no <tt>--pretty</tt>, <tt>--format</tt> nor <tt>--oneline</tt> option is   given on the command line.   </p>  +<div class="para"><p>With an optional argument, add this ref to the list of notes. The ref  +is taken to be in <tt>refs/notes/</tt> if it is not qualified.</p></div>  +</dd>  +<dt>  +--[no-]standard-notes  +</dt>  +<dd>  +<p>  + Enable or disable populating the notes ref list from the  + <em>core.notesRef</em> and <em>notes.displayRef</em> variables (or  + corresponding environment overrides). Enabled by default.  + See <a href="git-config.html">git-config(1)</a>.  +</p>   </dd>   <dt>   --relative-date  @@ -1096,8 +1109,8 @@  </dt>   <dd>   <p>  - This flag changes the way a merge commit is displayed. It shows  - the differences from each of the parents to the merge result  + With this option, diff output for a merge commit  + shows the differences from each of the parents to the merge result   simultaneously instead of showing pairwise diff between a parent   and the result one at a time. Furthermore, it lists only files   which were modified from all parents.  @@ -1115,6 +1128,19 @@  </p>   </dd>   <dt>  +-m  +</dt>  +<dd>  +<p>  + This flag makes the merge commits show the full diff like  + regular commits; for each merge parent, a separate log entry  + and diff is generated. An exception is that only diff against  + the first parent is shown when <em>--first-parent</em> option is given;  + in that case, the output represents the changes the merge  + brought _into_ the then-current branch.  +</p>  +</dd>  +<dt>   -r   </dt>   <dd>  @@ -2288,7 +2314,8 @@  <div class="sectionbody">   <div class="para"><p>"git-diff-tree", "git-diff-files" and "git-diff" can take <em>-c</em> or   <em>--cc</em> option to produce <em>combined diff</em>. For showing a merge commit  -with "git log -p", this is the default format.  +with "git log -p", this is the default format; you can force showing  +full diff with the <em>-m</em> option.   A <em>combined diff</em> format looks like this:</p></div>   <div class="listingblock">   <div class="content">  @@ -2477,6 +2504,18 @@  repository master branches.   </p>   </dd>  +<dt>  +git log -p -m --first-parent  +</dt>  +<dd>  +<p>  + Shows the history including change diffs, but only from the  + "main branch" perspective, skipping commits that come from merged  + branches, and showing full diffs of changes introduced by the merges.  + This makes sense only when following a strict policy of merging all  + topic branches when staying on a single integration branch.  +</p>  +</dd>   </dl></div>   </div>   <h2 id="_discussion">Discussion</h2>  @@ -2568,7 +2607,7 @@  </div>   <div id="footer">   <div id="footer-text">  -Last updated 2010-03-03 05:12:42 UTC  +Last updated 2010-03-25 00:38:23 UTC   </div>   </div>   </body>  
diff --git a/git-log.txt b/git-log.txt index 0e39bb6..fb184ba 100644 --- a/git-log.txt +++ b/git-log.txt 
@@ -118,6 +118,15 @@ 	Shows all commits that are in local master but not in any remote 	repository master branches.   +git log -p -m --first-parent:: + +	Shows the history including change diffs, but only from the +	"main branch" perspective, skipping commits that come from merged +	branches, and showing full diffs of changes introduced by the merges. +	This makes sense only when following a strict policy of merging all +	topic branches when staying on a single integration branch. + +  Discussion  ----------   
diff --git a/git-notes.html b/git-notes.html index 67262f8..317dac1 100644 --- a/git-notes.html +++ b/git-notes.html 
@@ -323,7 +323,7 @@  <div class="verseblock">   <div class="content"><em>git notes</em> [list [&lt;object&gt;]]   <em>git notes</em> add [-f] [-F &lt;file&gt; | -m &lt;msg&gt; | (-c | -C) &lt;object&gt;] [&lt;object&gt;]  -<em>git notes</em> copy [-f] &lt;from-object&gt; &lt;to-object&gt;  +<em>git notes</em> copy [-f] ( --stdin | &lt;from-object&gt; &lt;to-object&gt; )   <em>git notes</em> append [-F &lt;file&gt; | -m &lt;msg&gt; | (-c | -C) &lt;object&gt;] [&lt;object&gt;]   <em>git notes</em> edit [&lt;object&gt;]   <em>git notes</em> show [&lt;object&gt;]  @@ -338,11 +338,15 @@  to change the commit itself. Such commit notes can be shown by <tt>git log</tt>   along with the original commit message. To discern these notes from the   message stored in the commit object, the notes are indented like the  -message, after an unindented line saying "Notes:".</p></div>  -<div class="para"><p>To disable notes, you have to set the config variable core.notesRef to  -the empty string. Alternatively, you can set it to a different ref,  -something like "refs/notes/bugzilla". This setting can be overridden  -by the environment variable "GIT_NOTES_REF".</p></div>  +message, after an unindented line saying "Notes (&lt;refname&gt;):" (or  +"Notes:" for the default setting).</p></div>  +<div class="para"><p>This command always manipulates the notes specified in "core.notesRef"  +(see <a href="git-config.html">git-config(1)</a>), which can be overridden by GIT_NOTES_REF.  +To change which notes are shown by <em>git-log</em>, see the  +"notes.displayRef" configuration.</p></div>  +<div class="para"><p>See the description of "notes.rewrite.&lt;command&gt;" in  +<a href="git-config.html">git-config(1)</a> for a way of carrying your notes across commands  +that rewrite commits.</p></div>   </div>   <h2 id="_subcommands">SUBCOMMANDS</h2>   <div class="sectionbody">  @@ -379,6 +383,14 @@  second object). This subcommand is equivalent to:   <tt>git notes add [-f] -C $(git notes list &lt;from-object&gt;) &lt;to-object&gt;</tt>   </p>  +<div class="para"><p>In <tt>--stdin</tt> mode, take lines in the format</p></div>  +<div class="listingblock">  +<div class="content">  +<pre><tt>&lt;from-object&gt; SP &lt;to-object&gt; [ SP &lt;rest&gt; ] LF</tt></pre>  +</div></div>  +<div class="para"><p>on standard input, and copy the notes from each &lt;from-object&gt; to its  +corresponding &lt;to-object&gt;. (The optional <tt>&lt;rest&gt;</tt> is ignored so that  +the command can read the input given to the <tt>post-rewrite</tt> hook.)</p></div>   </dd>   <dt>   append  @@ -488,8 +500,28 @@  the user can further edit the note message.   </p>   </dd>  +<dt>  +--ref &lt;ref&gt;  +</dt>  +<dd>  +<p>  + Manipulate the notes tree in &lt;ref&gt;. This overrides both  + GIT_NOTES_REF and the "core.notesRef" configuration. The ref  + is taken to be in <tt>refs/notes/</tt> if it is not qualified.  +</p>  +</dd>   </dl></div>   </div>  +<h2 id="_notes">NOTES</h2>  +<div class="sectionbody">  +<div class="para"><p>Every notes change creates a new commit at the specified notes ref.  +You can therefore inspect the history of the notes by invoking, e.g.,  +<tt>git log -p notes/commits</tt>.</p></div>  +<div class="para"><p>Currently the commit message only records which operation triggered  +the update, and the commit authorship is determined according to the  +usual rules (see <a href="git-commit.html">git-commit(1)</a>). These details may change in  +the future.</p></div>  +</div>   <h2 id="_author">Author</h2>   <div class="sectionbody">   <div class="para"><p>Written by Johannes Schindelin &lt;johannes.schindelin@gmx.de&gt; and  @@ -505,7 +537,7 @@  </div>   <div id="footer">   <div id="footer-text">  -Last updated 2010-03-15 20:32:31 UTC  +Last updated 2010-03-25 00:38:23 UTC   </div>   </div>   </body>  
diff --git a/git-notes.txt b/git-notes.txt index bef2f39..4e5113b 100644 --- a/git-notes.txt +++ b/git-notes.txt 
@@ -10,7 +10,7 @@  [verse]  'git notes' [list [<object>]]  'git notes' add [-f] [-F <file> | -m <msg> | (-c | -C) <object>] [<object>] -'git notes' copy [-f] <from-object> <to-object> +'git notes' copy [-f] ( --stdin | <from-object> <to-object> )  'git notes' append [-F <file> | -m <msg> | (-c | -C) <object>] [<object>]  'git notes' edit [<object>]  'git notes' show [<object>] @@ -27,12 +27,17 @@  to change the commit itself. Such commit notes can be shown by `git log`  along with the original commit message. To discern these notes from the  message stored in the commit object, the notes are indented like the -message, after an unindented line saying "Notes:". +message, after an unindented line saying "Notes (<refname>):" (or +"Notes:" for the default setting).   -To disable notes, you have to set the config variable core.notesRef to -the empty string. Alternatively, you can set it to a different ref, -something like "refs/notes/bugzilla". This setting can be overridden -by the environment variable "GIT_NOTES_REF". +This command always manipulates the notes specified in "core.notesRef" +(see linkgit:git-config[1]), which can be overridden by GIT_NOTES_REF. +To change which notes are shown by 'git-log', see the +"notes.displayRef" configuration. + +See the description of "notes.rewrite.<command>" in +linkgit:git-config[1] for a way of carrying your notes across commands +that rewrite commits.      SUBCOMMANDS @@ -55,6 +60,16 @@ 	object has none (use -f to overwrite existing notes to the 	second object). This subcommand is equivalent to: 	`git notes add [-f] -C $(git notes list <from-object>) <to-object>` ++ +In `\--stdin` mode, take lines in the format ++ +---------- +<from-object> SP <to-object> [ SP <rest> ] LF +---------- ++ +on standard input, and copy the notes from each <from-object> to its +corresponding <to-object>. (The optional `<rest>` is ignored so that +the command can read the input given to the `post-rewrite` hook.)    append:: 	Append to the notes of an existing object (defaults to HEAD). @@ -101,6 +116,25 @@ 	Like '-C', but with '-c' the editor is invoked, so that 	the user can further edit the note message.   +--ref <ref>:: +	Manipulate the notes tree in <ref>. This overrides both +	GIT_NOTES_REF and the "core.notesRef" configuration. The ref +	is taken to be in `refs/notes/` if it is not qualified. + + +NOTES +----- + +Every notes change creates a new commit at the specified notes ref. +You can therefore inspect the history of the notes by invoking, e.g., +`git log -p notes/commits`. + +Currently the commit message only records which operation triggered +the update, and the commit authorship is determined according to the +usual rules (see linkgit:git-commit[1]). These details may change in +the future. + +  Author  ------  Written by Johannes Schindelin <johannes.schindelin@gmx.de> and 
diff --git a/git-rev-list.html b/git-rev-list.html index 806b993..b88a25b 100644 --- a/git-rev-list.html +++ b/git-rev-list.html 
@@ -463,7 +463,7 @@  --no-notes   </dt>   <dt>  ---show-notes  +--show-notes[=&lt;ref&gt;]   </dt>   <dd>   <p>  @@ -473,6 +473,19 @@  there is no <tt>--pretty</tt>, <tt>--format</tt> nor <tt>--oneline</tt> option is   given on the command line.   </p>  +<div class="para"><p>With an optional argument, add this ref to the list of notes. The ref  +is taken to be in <tt>refs/notes/</tt> if it is not qualified.</p></div>  +</dd>  +<dt>  +--[no-]standard-notes  +</dt>  +<dd>  +<p>  + Enable or disable populating the notes ref list from the  + <em>core.notesRef</em> and <em>notes.displayRef</em> variables (or  + corresponding environment overrides). Enabled by default.  + See <a href="git-config.html">git-config(1)</a>.  +</p>   </dd>   <dt>   --relative-date  @@ -1768,7 +1781,7 @@  </div>   <div id="footer">   <div id="footer-text">  -Last updated 2010-02-19 09:57:46 UTC  +Last updated 2010-03-25 00:38:24 UTC   </div>   </div>   </body>  
diff --git a/git-show.html b/git-show.html index ab1c711..7798012 100644 --- a/git-show.html +++ b/git-show.html 
@@ -403,7 +403,7 @@  --no-notes   </dt>   <dt>  ---show-notes  +--show-notes[=&lt;ref&gt;]   </dt>   <dd>   <p>  @@ -413,6 +413,19 @@  there is no <tt>--pretty</tt>, <tt>--format</tt> nor <tt>--oneline</tt> option is   given on the command line.   </p>  +<div class="para"><p>With an optional argument, add this ref to the list of notes. The ref  +is taken to be in <tt>refs/notes/</tt> if it is not qualified.</p></div>  +</dd>  +<dt>  +--[no-]standard-notes  +</dt>  +<dd>  +<p>  + Enable or disable populating the notes ref list from the  + <em>core.notesRef</em> and <em>notes.displayRef</em> variables (or  + corresponding environment overrides). Enabled by default.  + See <a href="git-config.html">git-config(1)</a>.  +</p>   </dd>   </dl></div>   </div>  @@ -961,7 +974,7 @@  </div>   <div id="footer">   <div id="footer-text">  -Last updated 2010-02-13 00:59:57 UTC  +Last updated 2010-03-25 00:38:25 UTC   </div>   </div>   </body>  
diff --git a/git-whatchanged.html b/git-whatchanged.html index 51b75c2..8b3f316 100644 --- a/git-whatchanged.html +++ b/git-whatchanged.html 
@@ -435,7 +435,7 @@  --no-notes   </dt>   <dt>  ---show-notes  +--show-notes[=&lt;ref&gt;]   </dt>   <dd>   <p>  @@ -445,6 +445,19 @@  there is no <tt>--pretty</tt>, <tt>--format</tt> nor <tt>--oneline</tt> option is   given on the command line.   </p>  +<div class="para"><p>With an optional argument, add this ref to the list of notes. The ref  +is taken to be in <tt>refs/notes/</tt> if it is not qualified.</p></div>  +</dd>  +<dt>  +--[no-]standard-notes  +</dt>  +<dd>  +<p>  + Enable or disable populating the notes ref list from the  + <em>core.notesRef</em> and <em>notes.displayRef</em> variables (or  + corresponding environment overrides). Enabled by default.  + See <a href="git-config.html">git-config(1)</a>.  +</p>   </dd>   </dl></div>   </div>  @@ -900,7 +913,7 @@  </div>   <div id="footer">   <div id="footer-text">  -Last updated 2010-02-13 01:00:00 UTC  +Last updated 2010-03-25 00:38:25 UTC   </div>   </div>   </body>  
diff --git a/githooks.html b/githooks.html index 9b3965c..44f7668 100644 --- a/githooks.html +++ b/githooks.html 
@@ -558,6 +558,43 @@  <div class="para"><p>This hook is invoked by <em>git gc --auto</em>. It takes no parameter, and   exiting with non-zero status from this script causes the <em>git gc --auto</em>   to abort.</p></div>  +<h3 id="_post_rewrite">post-rewrite</h3><div style="clear:left"></div>  +<div class="para"><p>This hook is invoked by commands that rewrite commits (<tt>git commit  +--amend</tt>, <em>git-rebase</em>; currently <em>git-filter-branch</em> does <em>not</em> call  +it!). Its first argument denotes the command it was invoked by:  +currently one of <tt>amend</tt> or <tt>rebase</tt>. Further command-dependent  +arguments may be passed in the future.</p></div>  +<div class="para"><p>The hook receives a list of the rewritten commits on stdin, in the  +format</p></div>  +<div class="literalblock">  +<div class="content">  +<pre><tt>&lt;old-sha1&gt; SP &lt;new-sha1&gt; [ SP &lt;extra-info&gt; ] LF</tt></pre>  +</div></div>  +<div class="para"><p>The <em>extra-info</em> is again command-dependent. If it is empty, the  +preceding SP is also omitted. Currently, no commands pass any  +<em>extra-info</em>.</p></div>  +<div class="para"><p>The hook always runs after the automatic note copying (see  +"notes.rewrite.&lt;command&gt;" in linkgit:git-config.txt) has happened, and  +thus has access to these notes.</p></div>  +<div class="para"><p>The following command-specific comments apply:</p></div>  +<div class="vlist"><dl>  +<dt>  +rebase  +</dt>  +<dd>  +<p>  + For the <em>squash</em> and <em>fixup</em> operation, all commits that were  + squashed are listed as being rewritten to the squashed commit.  + This means that there will be several lines sharing the same  + <em>new-sha1</em>.  +</p>  +<div class="para"><p>The commits are guaranteed to be listed in the order that they were  +processed by rebase.</p></div>  +</dd>  +</dl></div>  +<div class="para"><p>There is no default <em>post-rewrite</em> hook, but see the  +<tt>post-receive-copy-notes</tt> script in <tt>contrib/hooks</tt> for an example  +that copies your git-notes to the rewritten commits.</p></div>   </div>   <h2 id="_git">GIT</h2>   <div class="sectionbody">  @@ -565,7 +602,7 @@  </div>   <div id="footer">   <div id="footer-text">  -Last updated 2010-02-13 01:00:02 UTC  +Last updated 2010-03-25 00:38:25 UTC   </div>   </div>   </body>  
diff --git a/githooks.txt b/githooks.txt index 87e2c03..7183aa9 100644 --- a/githooks.txt +++ b/githooks.txt 
@@ -317,6 +317,44 @@  exiting with non-zero status from this script causes the 'git gc --auto'  to abort.   +post-rewrite +~~~~~~~~~~~~ + +This hook is invoked by commands that rewrite commits (`git commit +--amend`, 'git-rebase'; currently 'git-filter-branch' does 'not' call +it!). Its first argument denotes the command it was invoked by: +currently one of `amend` or `rebase`. Further command-dependent +arguments may be passed in the future. + +The hook receives a list of the rewritten commits on stdin, in the +format + + <old-sha1> SP <new-sha1> [ SP <extra-info> ] LF + +The 'extra-info' is again command-dependent. If it is empty, the +preceding SP is also omitted. Currently, no commands pass any +'extra-info'. + +The hook always runs after the automatic note copying (see +"notes.rewrite.<command>" in linkgit:git-config.txt) has happened, and +thus has access to these notes. + +The following command-specific comments apply: + +rebase:: +	For the 'squash' and 'fixup' operation, all commits that were +	squashed are listed as being rewritten to the squashed commit. +	This means that there will be several lines sharing the same +	'new-sha1'. ++ +The commits are guaranteed to be listed in the order that they were +processed by rebase. + +There is no default 'post-rewrite' hook, but see the +`post-receive-copy-notes` script in `contrib/hooks` for an example +that copies your git-notes to the rewritten commits. + +  GIT  ---  Part of the linkgit:git[1] suite 
diff --git a/pretty-options.txt b/pretty-options.txt index aa96cae..af6d2b9 100644 --- a/pretty-options.txt +++ b/pretty-options.txt 
@@ -30,9 +30,18 @@ 	defaults to UTF-8.    --no-notes:: ---show-notes:: +--show-notes[=<ref>]:: 	Show the notes (see linkgit:git-notes[1]) that annotate the 	commit, when showing the commit log message. This is the default 	for `git log`, `git show` and `git whatchanged` commands when 	there is no `--pretty`, `--format` nor `--oneline` option is 	given on the command line. ++ +With an optional argument, add this ref to the list of notes. The ref +is taken to be in `refs/notes/` if it is not qualified. + +--[no-]standard-notes:: +	Enable or disable populating the notes ref list from the +	'core.notesRef' and 'notes.displayRef' variables (or +	corresponding environment overrides). Enabled by default. +	See linkgit:git-config[1]. 
diff --git a/rev-list-options.txt b/rev-list-options.txt index 81c0e6f..b9fb7a8 100644 --- a/rev-list-options.txt +++ b/rev-list-options.txt 
@@ -108,8 +108,8 @@    -c::   -	This flag changes the way a merge commit is displayed. It shows -	the differences from each of the parents to the merge result +	With this option, diff output for a merge commit +	shows the differences from each of the parents to the merge result 	simultaneously instead of showing pairwise diff between a parent 	and the result one at a time. Furthermore, it lists only files 	which were modified from all parents. @@ -121,6 +121,15 @@ 	the parents have only two variants and the merge result picks 	one of them without modification.   +-m:: + +	This flag makes the merge commits show the full diff like +	regular commits; for each merge parent, a separate log entry +	and diff is generated. An exception is that only diff against +	the first parent is shown when '--first-parent' option is given; +	in that case, the output represents the changes the merge +	brought _into_ the then-current branch. +  -r::   	Show recursive diffs.